package com.sky.service;

import com.sky.entity.AddressBook;

import javax.security.auth.DestroyFailedException;
import java.util.List;

/**
 * 地址簿管理业务层
 */
public interface AddressBookService {

    /**
     * 根据用户id查询对应的地址
     * @return
     */
    List<AddressBook> list();

    /**
     * 新增地址簿地址
     * @param addressBook
     */
    void save(AddressBook addressBook);

    /**
     * 获取默认地址
     * @return
     */
    AddressBook getDefaultAddress();

    /**
     * 设置默认地址
     * @param addressBook
     */
    void setDefaultAddress(AddressBook addressBook);

    /**
     * 根据id删除地址
     * @param id
     */
    void deleteById(Long id) throws DestroyFailedException;

    /**
     * 根据id查询地址
     * @param id
     * @return
     */
    AddressBook getById(Long id);

    /**
     * 根据id修改地址信息
     * @param addressBook
     */
    void update(AddressBook addressBook);
}
